﻿namespace If判断
{
    internal class Program
    {
        static void Main(string[] args)
        {

            /*
             【表达式】
             一、通用的解释：
                    1. 和命令、声明一起，是每一门编程语言的基本组件。
                    2. 表达式可以说是任何一门语言的核心组件
                    3. 表达式是一种语法实体，功能是用来求值，并且求值的结果只可能有两个：
                            成功、失败
                            如果成功的话，就会有一个产出值；
                            如果失败就会，就会终止（异常）；

            二、表达式
                1. 表达式是运算符和操作数组成的字符串。
                2. 表达式可以由许多嵌套的子表达式构成，这就产生了求值顺序，运算符的优先级。
                3. 表达式是由运算符连接常量、变量、函数所组成的式子。
                        每一个表达式都有一个值和类型。如 a+b; 3*6   a/b  a+(b/c)    d-Add(q,n) ......

            总结： 表达式是构成算法逻辑的最基本单元，功能就是：求值，来表达了一定的算法意图

            
            【作用域】
                    1. 变量可以访问的区域 。
                    2. 类范围、方法范围、一对{}区域中   
                    3. 同一个 {} 中，如果已经定义过一个名称为 a的变量，那么则无法再定义一个名为a的变量。

             */

            // if判断
            /*
             * if(表达式为真)  true/false
             * {
             *      int a= 0;
             *      // 业务逻辑
             * }
             * else if(表达式为真)
             * {
             *      int a=0;
             *      // 业务逻辑
             * }
             * else
             * {
             *      // 业务逻辑
             * }
             */
            int score = 90; 

            if (score < 60)
            {
                Console.WriteLine("成绩不及格");
            }
            else if (score < 80)
            {
                Console.WriteLine("成绩良");
            }
            else
            {
                Console.WriteLine("成绩优秀");
            }

            // 三元运算符
            // 1.（返回bool类型的表达式）? "为真的结果" : "为假的结果";
            // 2. 返回的结果数据类型要一致
            var isGood = score > 80 ? "优秀" : "不优秀";

            // 练习:
            // 如果报警代码为1000，则打印故障错误
            // 如果报警代码为2000，则打印自动运行
            // 如果报警代码为3000，则打印手动状态
        }
    }
}
